<template>
  <div class="form-setting-panel">
    <!-- start 标题 -->
    <div class="form-setting-group form-common-setting">
      <h3 class="form-setting-panel-title">{{ field.displayName }}</h3>
      <div class="form-design-warning">
        {{$t('common.form.tip.linkman.tips1', {customer:$t('common.form.type.customer')})}}
      </div>
    </div>
    <!-- end 标题 -->

    <!-- start 描述信息 -->
    <form-describe-setting
      :field="field"
      @input="updateForDom"
    ></form-describe-setting>
    <!-- end 描述信息 -->

    <!-- start 校验 -->
    <div class="form-setting-group form-setting-item">
      <h4 class="form-item-title">{{$t('common.base.check')}}</h4>
      <div class="form-item-box">
        <!-- 必填 -->
        <form-required-setting
          :field="field"
          @input="update"
        ></form-required-setting>
      </div>
    </div>
    <!-- end 校验 -->

    <!-- start 字段权限 -->
    <div class="form-setting-group form-setting-item">
      <h4 class="form-item-title">{{$t('common.base.fieldPermissions')}}</h4>
      <div class="form-item-box">
        <!-- 移动端列表展示 -->
        <!-- <mobile-show-setting
          :field="field"
          :fields="fields"
          @input="update"
        ></mobile-show-setting> -->
        <!-- 支持高级搜索 -->
        <form-search-setting
          :field="field"
          @input="update"
        ></form-search-setting>
      </div>
    </div>
    <!-- end 字段权限 -->
  </div>
</template>

<script>
import SettingMixin from '@src/component/form/mixin/setting';
import { settingProps } from '@src/component/form/components/props';

export default {
  name: 'form-customer-linkman-setting',
  mixins: [SettingMixin],
  props: settingProps,
  computed: {
    customerOption() {
      return this.field.setting.customerOption || {};
    }
  },
  methods: {
    updateForDom(event) {
      let el = event.target;
      let prop = el.dataset.prop;
      let value = el.value;
      this.update(value, prop);
    },
    update(value, prop) {
      this.$emit('input', { value, prop });
    }
  }
};
</script>
